package lz.controls.nick
{
	import com.common.utils.Reflection;
	
	import flash.display.Bitmap;
	import flash.display.DisplayObject;
	import flash.display.DisplayObjectContainer;
	import flash.display.MovieClip;
	import flash.display.Sprite;
	
	import flashx.textLayout.formats.Float;
	
	/**
	 *数字工具 
	 * @author Administrator
	 * 
	 */	
	public class NumberUtils
	{
		public function NumberUtils()
		{
		}
		/**
		 * 数字转为位图数字 
		 * @param $value
		 * @return 
		 * 
		 */
		public static function numberToBitmap($str:String):Bitmap
		{
			return new Bitmap(Reflection.createInstance($str));
		}
		/**
		 *在容器中添加数字位图 
		 * @param $contain
		 * @param $value
		 * 
		 */
		public static function containAddNumBitmap($contain:DisplayObjectContainer,$value:int,$str:String = null):void
		{
			var str:String = $value.toString();
			var len:int = str.length;
			if(len <=1)
				str = "0"+str;
			len = str.length;
			var bitmap:Bitmap;
			for(var i:int = 0;i < len;i++)
			{
				bitmap = numberToBitmap(($str == null?"number_":$str)+str.substr(i,1));
				bitmap.x = (bitmap.width )*i;
				bitmap.y = 7;
				$contain.addChild(bitmap);		
			}
		}
//		/**
//		 *数字转位图 
//		 * 
//		 */
//		public static function numberChangeBitmap($contain:DisplayObjectContainer,$value:int,$isScale:Boolean = true):void
//		{
//			var str:String = $value.toString();
//			var len:int = str.length;
//			var sp:Sprite = new Sprite();
//			var bitmap:Bitmap;
//			for(var i:int = 0;i < len;i++)
//			{
//				bitmap = numberToBitmap("com.football.number_"+str.substr(i,1));
//				bitmap.x = (bitmap.width - 3)* i;
//				sp.addChild(bitmap);
//			}
//			sp.x = -sp.width >> 1;
//			$contain.addChild(sp);
//		}
		/**
		 * 球员卡号码转位图 
		 * @param $contain
		 * @param $value
		 * @param $str
		 * 
		 */
		public static function playercardNumberToBitmap($contain:DisplayObjectContainer,$value:int,$str:String = null):void
		{
//			if($str == null)return;
			var str:String = $value.toString();
			if($value < 10)str = "0"+ str;
			var len:int = str.length;
			var bitmap:Bitmap;
			for(var i:int = 0;i < len;i++)
			{
				bitmap = numberToBitmap("com.football.number_incard_"+str.substr(i,1));
				bitmap.x = (bitmap.width + 1)* i;
				$contain.addChild(bitmap);
			}
		}
		/**
		 * 数字到容器
		 * @param $contain
		 * @param $value
		 * @param $scan缩放比例
		 * 
		 */
		public static function numberToContain($contain:DisplayObjectContainer,$value:uint,$scan:Number = 1):void
		{
			var str:String = $value.toString();
			if($value < 10)str = str;
			var len:int = str.length;
			var bitmap:MovieClip;
			for(var i:int = 0;i < len;i++)
			{
				bitmap = Reflection.createInstance("com.lz.commonUI.number_"+str.substr(i,1));
				bitmap.scaleX = bitmap.scaleY = $scan;
				//bitmap.x = /*(bitmap.width + 1)*i*/$contain.width ;/*(10 * $scan + 1) *i;*/
				bitmap.x = $contain.width + ($contain.numChildren?2:0);
//				bitmap.x = $contain.width 
				$contain.addChild(bitmap);
			}
		}
	}
}